package beans;

import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

/**
 * Creared with IntelliJ IDEA.
 * Description:
 * User:yxd
 * Date:2022-07-07
 * Time:16:47
 */
@Component
public class UserBeans {
    //这里使用bean注解，bean注解只能放在方法上面
    //可以通过设置 name 属性给 Bean 对象进⾏重命名操作
    @Bean(name = {"user1"}) //这里是不能单独使用@Bean注解的，需要搭配一个类注解才可以
    public User getUser1(){
        User user = new User();
        user.setId(1);
        user.setName("张三");
        return user;
    }
    @Bean(name = {"user2"}) //这里是不能单独使用@Bean注解的，需要搭配一个类注解才可以
    public User getUser2(){
        User user = new User();
        user.setId(2);
        user.setName("李四");
        return user;
    }
    @Bean(name = {"userinfo"}) //这里是不能单独使用@Bean注解的，需要搭配一个类注解才可以
//    @Scope("prototype")
    @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
    public User getUser(){
        User user = new User();
        user.setId(1);
        user.setName("小狗");
        return user;
    }
}
